home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / program / gemxx19.zoo / gem++19 / man / gemuo.man < prev    next >
Text File  |  1993-05-04  |  2KB  |  72 lines

  1.                      GEM++ - C++ LIBRARIES FOR GEM/AES/VDI
  2.  
  3.  
  4.  
  5. NAME
  6.      GEMuserobject - GEMobject with user-defined graphic representation
  7.  
  8. DESCRIPTION
  9.      GEM provides a range of buttons with various borders, etc.
  10.  
  11.      For whatever reason, the programmer may wish to define new graphics
  12.      for objects.
  13.  
  14.      This is an abstract class, since the actual drawing function is
  15.      not defined.  A derived class, GEMvdiobject, provides a higher-
  16.      level interface.
  17.  
  18. CONSTRUCTORS
  19.      GEMuserobject(GEMform&, int RSCindex)
  20.        As per GEMobject
  21.  
  22. PROTECTED METHODS
  23.  
  24.      ********************************************************************
  25.      NOTE: Draw() and Change() MUST NOT CALL ANY AES FUNCTIONS.  THEY MAY
  26.            CALL GEMDOS, BIOS, XBIOS, AND VDI FUNCTIONS.
  27.  
  28.            Some GEM++ methods call AES functions, most notably
  29.            GEMobject::GetAbsoluteXY().
  30.      ********************************************************************
  31.  
  32.      virtual void Draw(const PARMBLK* p)=0
  33.        Draw the area defined in the PARMBLK.  This methods should draw
  34.        the object at (p->pb_x,p->pb_y), clipped to p->pb_?c.  See gemfast.h
  35.        for the definition of PARMBLK.
  36.  
  37.      virtual void Change(const PARMBLK*)
  38.        Simply calls Draw - derived classes could behave more cleverly,
  39.        such as the way the AES merely inverts areas rather than redrawing
  40.        when items are selected.
  41.  
  42.      virtual int Type()
  43.      virtual int ObjectSpecific()
  44.      virtual void Type(int)
  45.      virtual void ObjectSpecific(int)
  46.        Note that this class overrides these function in such a way that
  47.        the original object type and object-specific data remains intact.
  48.        This means that a derived class may be defined that changes the
  49.        way the type looks, but still allows the fields of the object to
  50.        be accessed as usual - such as the text of a string object.
  51.  
  52. SEE ALSO
  53.      GEMvdiobject
  54.  
  55. BUGS
  56.      Bugs in GEM++ should be reported to warwick@cs.uq.oz.au
  57.  
  58. AUTHOR
  59.      Warwick Allison, 1993.
  60.      warwick@cs.uq.oz.au
  61.  
  62. COPYING
  63.      This functionality is part of the GEM++ library,
  64.      and is Copyright 1993 by Warwick W. Allison.
  65.  
  66.      GEM++ is free and protected under the GNU Library General Public
  67.      License.
  68.  
  69.      You are free to copy and modify these sources, provided you
  70.      acknowledge the origin by retaining this notice, and adhere to
  71.      the conditions described in the GNU LGPL.
  72.